var runtime.gcBitsArenas

35 uses

	runtime (current package)
		malloc.go#L437: 	lockInit(&gcBitsArenas.lock, lockRankGcBitsArenas)
		mheap.go#L2115: var gcBitsArenas struct {
		mheap.go#L2146: 	head := (*gcBitsArena)(atomic.Loadp(unsafe.Pointer(&gcBitsArenas.next)))
		mheap.go#L2153: 	lock(&gcBitsArenas.lock)
		mheap.go#L2157: 	if p := gcBitsArenas.next.tryAlloc(bytesNeeded); p != nil {
		mheap.go#L2158: 		unlock(&gcBitsArenas.lock)
		mheap.go#L2167: 	if p := gcBitsArenas.next.tryAlloc(bytesNeeded); p != nil {
		mheap.go#L2170: 		fresh.next = gcBitsArenas.free
		mheap.go#L2171: 		gcBitsArenas.free = fresh
		mheap.go#L2172: 		unlock(&gcBitsArenas.lock)
		mheap.go#L2184: 	fresh.next = gcBitsArenas.next
		mheap.go#L2185: 	atomic.StorepNoWB(unsafe.Pointer(&gcBitsArenas.next), unsafe.Pointer(fresh))
		mheap.go#L2187: 	unlock(&gcBitsArenas.lock)
		mheap.go#L2216: 	lock(&gcBitsArenas.lock)
		mheap.go#L2217: 	if gcBitsArenas.previous != nil {
		mheap.go#L2218: 		if gcBitsArenas.free == nil {
		mheap.go#L2219: 			gcBitsArenas.free = gcBitsArenas.previous
		mheap.go#L2222: 			last := gcBitsArenas.previous
		mheap.go#L2223: 			for last = gcBitsArenas.previous; last.next != nil; last = last.next {
		mheap.go#L2225: 			last.next = gcBitsArenas.free
		mheap.go#L2226: 			gcBitsArenas.free = gcBitsArenas.previous
		mheap.go#L2229: 	gcBitsArenas.previous = gcBitsArenas.current
		mheap.go#L2230: 	gcBitsArenas.current = gcBitsArenas.next
		mheap.go#L2231: 	atomic.StorepNoWB(unsafe.Pointer(&gcBitsArenas.next), nil) // newMarkBits calls newArena when needed
		mheap.go#L2232: 	unlock(&gcBitsArenas.lock)
		mheap.go#L2239: 	if gcBitsArenas.free == nil {
		mheap.go#L2240: 		unlock(&gcBitsArenas.lock)
		mheap.go#L2245: 		lock(&gcBitsArenas.lock)
		mheap.go#L2247: 		result = gcBitsArenas.free
		mheap.go#L2248: 		gcBitsArenas.free = gcBitsArenas.free.next